Nextcloud bot [Mon, 7 Jul 2025 02:48:51 +0000 (02:48 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Fri, 4 Jul 2025 02:50:45 +0000 (02:50 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Thu, 3 Jul 2025 02:52:16 +0000 (02:52 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Tue, 1 Jul 2025 02:48:07 +0000 (02:48 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Mon, 30 Jun 2025 03:37:02 +0000 (03:37 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Sun, 29 Jun 2025 03:34:08 +0000 (03:34 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Sat, 28 Jun 2025 03:38:56 +0000 (03:38 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Fri, 27 Jun 2025 03:08:33 +0000 (03:08 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Wed, 25 Jun 2025 03:03:20 +0000 (03:03 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Tue, 24 Jun 2025 03:01:25 +0000 (03:01 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Mon, 23 Jun 2025 03:00:52 +0000 (03:00 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Sun, 22 Jun 2025 03:03:27 +0000 (03:03 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Thu, 19 Jun 2025 03:01:26 +0000 (03:01 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Matthieu Gallien [Wed, 18 Jun 2025 20:57:35 +0000 (22:57 +0200)]
fix(logs): remove not so useful logs
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Wed, 18 Jun 2025 20:40:41 +0000 (22:40 +0200)]
fix(logs): remove useless logs
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Wed, 18 Jun 2025 15:00:06 +0000 (17:00 +0200)]
chore: prepare for 3.16.6 release
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Wed, 18 Jun 2025 14:53:01 +0000 (16:53 +0200)]
Merge pull request #8382 from nextcloud/backport/8370/stable-3.16
[stable-3.16] fix(readonly): better handling of ACL on read-only files on windows
Matthieu Gallien [Thu, 12 Jun 2025 12:16:41 +0000 (14:16 +0200)]
fix(readonly): better handling of ACL on read-only files on windows
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Jyrki Gadinger [Wed, 18 Jun 2025 08:24:12 +0000 (10:24 +0200)]
Merge pull request #8381 from nextcloud/backport/8356/stable-3.16
[stable-3.16] fix(crash): debug builds would not try to remove a not found job
Matthieu Gallien [Fri, 6 Jun 2025 09:58:39 +0000 (11:58 +0200)]
fix(crash): debug builds would not try to remove a not found job
in release builds we would happily try to remove an element from QList
with invalid index (-1) if the job is not found
avoid doing this in release builds and keep teh assert in debug builds
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Jyrki Gadinger [Wed, 18 Jun 2025 07:08:40 +0000 (09:08 +0200)]
Merge pull request #8380 from nextcloud/backport/8379/stable-3.16
[stable-3.16] fix(accountmanager): use defaults from configFile if setting was not present
Jyrki Gadinger [Wed, 18 Jun 2025 05:58:33 +0000 (07:58 +0200)]
style: access static members through `::`
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Tue, 17 Jun 2025 10:29:40 +0000 (12:29 +0200)]
fix(accountmanager): use defaults from configFile if setting was not present
This prevented e.g. "launchOnSystemStartup" to be set on a fresh
installation.
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Nextcloud bot [Tue, 17 Jun 2025 03:00:13 +0000 (03:00 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Jyrki Gadinger [Mon, 16 Jun 2025 13:41:49 +0000 (15:41 +0200)]
Merge pull request #8378 from nextcloud/backport/8375/stable-3.16
[stable-3.16] fix(activitylistmodel): fix activities for e2ee files
Jyrki Gadinger [Mon, 16 Jun 2025 08:09:38 +0000 (10:09 +0200)]
fix(activitylistmodel): fix activities for e2ee files
the sharing/activity button was supposed to be hidden, but a later
change forgot to adapt the variable used for querying the file metadata
so it never could determine the e2e-status
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Nextcloud bot [Sat, 14 Jun 2025 03:00:51 +0000 (03:00 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Fri, 13 Jun 2025 02:58:22 +0000 (02:58 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Wed, 11 Jun 2025 03:01:29 +0000 (03:01 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Tue, 10 Jun 2025 02:59:34 +0000 (02:59 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Sun, 8 Jun 2025 02:58:55 +0000 (02:58 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Sat, 7 Jun 2025 02:57:25 +0000 (02:57 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Fri, 6 Jun 2025 03:06:08 +0000 (03:06 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Thu, 5 Jun 2025 03:01:36 +0000 (03:01 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Jyrki Gadinger [Wed, 4 Jun 2025 09:19:49 +0000 (11:19 +0200)]
Merge pull request #8348 from nextcloud/backport/8347/stable-3.16
[stable-3.16] fix(msi): set the REBOOT property in the MSI
Jyrki Gadinger [Wed, 4 Jun 2025 08:20:15 +0000 (10:20 +0200)]
fix(msi): set the REBOOT property in the MSI
A value of `ReallySuppress` will not display a reboot prompt whenever
the `ForceReboot` action was run, or whenever a reboot was scheduled
(e.g. by `FilesInUse`). Apparently this will not reboot the machine on
its own either.
`winget` sets this property in its manifest[0], and according to reports in
issue #5369 this seems to work.
See also: https://learn.microsoft.com/en-us/windows/win32/msi/reboot
[0]: https://github.com/microsoft/winget-pkgs/blob/
0b40904d1480f67d48c6d8e2ac7f27b31aa566c7/manifests/n/Nextcloud/NextcloudDesktop/3.16.5/Nextcloud.NextcloudDesktop.installer.yaml#L16
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Wed, 4 Jun 2025 08:54:52 +0000 (10:54 +0200)]
Merge pull request #8346 from nextcloud/backport/8220/stable-3.16
[stable-3.16] fix(macOS): Fix prompting of user for permission to access "other" apps' data
Claudio Cambra [Tue, 29 Apr 2025 04:57:53 +0000 (12:57 +0800)]
feat(mac-crafter): Use our default entitlements file during default mac-crafter build run
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 29 Apr 2025 04:57:15 +0000 (12:57 +0800)]
feat(macOS): Add entitlements file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 29 Apr 2025 04:52:13 +0000 (12:52 +0800)]
feat(mac-crafter): Add entitlements path option to codesign command
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Claudio Cambra [Tue, 29 Apr 2025 04:51:13 +0000 (12:51 +0800)]
feat(mac-crafter): Add ability to codesign with an entitlements file
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
Nextcloud bot [Wed, 4 Jun 2025 03:00:19 +0000 (03:00 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Tue, 3 Jun 2025 02:58:54 +0000 (02:58 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Jyrki Gadinger [Mon, 2 Jun 2025 14:54:22 +0000 (16:54 +0200)]
chore: prepare for release 3.16.4
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Matthieu Gallien [Mon, 2 Jun 2025 14:50:45 +0000 (16:50 +0200)]
Merge pull request #8332 from nextcloud/backport/8330/stable-3.16
[stable-3.16] fix(lockfilejobs): ensure using correct file path
Jyrki Gadinger [Mon, 2 Jun 2025 13:59:17 +0000 (15:59 +0200)]
fix(lockfilejobs): ensure using correct file path
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Mon, 2 Jun 2025 13:14:22 +0000 (15:14 +0200)]
Merge pull request #8328 from nextcloud/backport/8290/stable-3.16
[stable-3.16] fix(filesystem): only change folder permissions if required
Jyrki Gadinger [Wed, 21 May 2025 13:13:13 +0000 (15:13 +0200)]
fix(propagator): touch folder paths if permissions changed
Extra safeguard to ensure that the usage of
`FileSystem::setFolderPermissions` won't start a new sync run if
FolderWatcher/inotify detects a change in the file metadata...
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Tue, 20 May 2025 17:25:53 +0000 (19:25 +0200)]
fix(filesystem): only change folder permissions if required
On Linux changing the permissions causes inotify to create a IN_ATTRIB
event -- even if the permissions stays the same.
Such an event is passed to the filesystem watcher which lets the client
schedule a new sync run. In certain conditions, this could happen
during every sync run...
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Matthieu Gallien [Mon, 2 Jun 2025 12:27:13 +0000 (14:27 +0200)]
Merge pull request #8327 from nextcloud/backport/8297/stable-3.16
[stable-3.16] fix(permissions): handle properly CanRead permission from server
Matthieu Gallien [Fri, 23 May 2025 17:53:41 +0000 (19:53 +0200)]
fix(permissions): handle properly CanRead permission from server
if Readable permissions is missing, do nto try to download the file
if a file was downlaoded but Readable permission is now missing, remove
it
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Mon, 2 Jun 2025 11:28:52 +0000 (13:28 +0200)]
Merge pull request #8326 from nextcloud/backport/8246/stable-3.16
[stable-3.16] fix(readonly): use native separator in paths before calling windows API
Matthieu Gallien [Wed, 7 May 2025 21:54:52 +0000 (23:54 +0200)]
fix(readonly): use native separator in paths before calling windows API
we need platform native separators for file paths that will be used in
native Windows platform specific APIs
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Mon, 2 Jun 2025 11:21:01 +0000 (13:21 +0200)]
Merge pull request #8322 from nextcloud/backport/8321/stable-3.16
[stable-3.16] Bugfix/windows regressions
Matthieu Gallien [Mon, 2 Jun 2025 08:57:57 +0000 (10:57 +0200)]
fix(windows): when deleting a file use safe long windows path
will avoid getting a content access denied error because some paths is
too long for windows default limit and has to use the special syntax for
long path
see https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=registry
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Fri, 30 May 2025 15:53:04 +0000 (17:53 +0200)]
fix(readonly): avoid changing permissions when not needed
in FilePermissionsRestore, first checks the folder permissions before
changing them
will avoid useless call changing permissions when not needed
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Wed, 28 May 2025 15:14:46 +0000 (17:14 +0200)]
fix(readonly): avoid implicit hydration when modifying permissions
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Mon, 2 Jun 2025 10:58:33 +0000 (12:58 +0200)]
Merge pull request #8325 from nextcloud/backport/8243/stable-3.16
[stable-3.16] fix(readonly): apply ACL also to files inside read-only folders
Matthieu Gallien [Wed, 7 May 2025 14:49:03 +0000 (16:49 +0200)]
fix(readonly): apply ACL also to files inside read-only folders
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Mon, 2 Jun 2025 10:50:57 +0000 (12:50 +0200)]
Merge pull request #8324 from nextcloud/backport/8241/stable-3.16
[stable-3.16] fix(readonly): enable MOVE rollback when folder is read-only
Matthieu Gallien [Wed, 7 May 2025 12:37:43 +0000 (14:37 +0200)]
fix(readonly): enable MOVE rollback when folder is read-only
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Mon, 2 Jun 2025 10:37:57 +0000 (12:37 +0200)]
Merge pull request #8323 from nextcloud/backport/8240/stable-3.16
[stable-3.16] fix(rename): avoid failing hard when rename is rejected by server
Matthieu Gallien [Mon, 5 May 2025 16:40:35 +0000 (18:40 +0200)]
fix(rename): avoid failing hard when rename is rejected by server
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Nextcloud bot [Sun, 1 Jun 2025 02:57:40 +0000 (02:57 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Sat, 31 May 2025 02:58:17 +0000 (02:58 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Matthieu Gallien [Fri, 9 May 2025 13:07:25 +0000 (15:07 +0200)]
feat(windows): use cmake to configure windows integration DLL version
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Jyrki Gadinger [Fri, 30 May 2025 08:25:51 +0000 (10:25 +0200)]
Merge pull request #8316 from nextcloud/backport/8277/stable-3.16
[stable-3.16] feat(mac-crafter): retry code-signing attempts
Jyrki Gadinger [Thu, 15 May 2025 14:11:38 +0000 (16:11 +0200)]
feat(mac-crafter): retry code-signing attempts
This step sometimes fails with an error such as: "A timestamp was
expected but was not found.". Any code-signing errors will result in
the notarisation step to fail.
Apparently this might be due to intermittent network issues. Let's just
retry codesigning a couple of times in the case it fails ...
See also: https://developer.apple.com/documentation/security/resolving-common-notarization-issues#Include-a-secure-timestamp
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Matthieu Gallien [Fri, 30 May 2025 07:41:33 +0000 (09:41 +0200)]
Merge pull request #8317 from nextcloud/backport/8217/stable-3.16
[stable-3.16] fix(appimage): move VFS plugins to AppDir
Jyrki Gadinger [Mon, 28 Apr 2025 13:13:14 +0000 (15:13 +0200)]
fix(appimage): move VFS plugins to AppDir
This allows the AppImage build to find and load the experimental VFS
plugins, and not crash with:
[ critical plugins /home/user/src/common/vfs.cpp:250 ]: Could not load plugin: not existent or bad metadata "nextclouddevsync_vfs_suffix"
[ fatal default /home/user/src/gui/folderman.cpp:326 ]: Could not load plugin
[1] 72936 IOT instruction (core dumped) ./nextclouddev-master-x86_64.AppImage
Fixes #7135
Fixes #7194
Fixes #7465
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Matthieu Gallien [Fri, 30 May 2025 07:40:40 +0000 (09:40 +0200)]
Merge pull request #8315 from nextcloud/backport/8178/stable-3.16
[stable-3.16] Bugfix/version windows integration improve install
Jyrki Gadinger [Fri, 30 May 2025 07:21:25 +0000 (09:21 +0200)]
chore: add missing backport for VERSION.cmake
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Mon, 12 May 2025 10:39:48 +0000 (12:39 +0200)]
feat(msi): do not schedule reboots ourselves
let's have the MSI RestartManager take care of that
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
[skip ci]
Matthieu Gallien [Fri, 9 May 2025 15:10:48 +0000 (17:10 +0200)]
fix(windows): add missing version to cfapi shell integration DLL
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Fri, 9 May 2025 13:07:25 +0000 (15:07 +0200)]
feat(windows): use cmake to configure windows integration DLL version
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Jyrki Gadinger [Thu, 8 May 2025 12:23:40 +0000 (14:23 +0200)]
fix(msi): force termination of stuck processes
Stopping the Windows Explorer process does not always work. Per default
the MSI Restart Manager will display a warning message after a timeout,
and not attempt to restart Explorer afterwards -- resulting in a black
screen if no other window is open.
Setting the property `MSIRMSHUTDOWN` to `1` will force the termination
of the process when the timeout is reached, which finally allows the
Explorer to be restarted.
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Wed, 7 May 2025 14:07:37 +0000 (16:07 +0200)]
fix(msi): do not completely remove the previous installation when updating
The MSIs we distribute perform so-called "major upgrades".
From the Microsoft docs, we learn that...
> A typical major upgrade **removes a previous version** of an
> application and installs a new version.
Indeed that was the case -- the previous version is uninstalled
completely before the new version gets installed. Since we install an
extension that's loaded by explorer, the installer will ask the user to
restart Windows Explorer during the uninstallation of the previous
version (and restarting that might not always work as expected).
There is a way to change this behaviour though, using Wix3's
`MajorUpgrade` element. Through its `Schedule` property it's possible
to define when the removal of the previous version should occur.
The previous value `afterInstallInitialize` is one of two values that
perform a complete uninstall/install sequence. The new value
`afterInstallExecute` will install new files on top of the previous
installation (depending on the `REINSTALLMODE` I guess) and remove
older files that are not present.
In the case of the extensions this means that the .dlls from the
previous installation will not be touched, as long as the version
embedded in the DLL info didn't change. This results in the installer
no longer requesting Windows Explorer to restart, which is a big plus :D
I also changed the REINSTALLMODE to `dmus` to allow downgrades as well.
With this change, the request to restart Windows Explorer should
hopefully happen only once an installation was made using an MSI that
contains this change. Further updates will only request a restart if
the DLL version of these extensions change...
See also:
- https://learn.microsoft.com/en-us/windows/win32/msi/major-upgrades
- https://docs.firegiant.com/wix/schema/wxs/majorupgrade/#attributes:~:text=Schedule
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Matthieu Gallien [Mon, 7 Apr 2025 15:57:21 +0000 (17:57 +0200)]
fix(msi): use standard replace mode for MSI installer
shoudl enable replacing files during install happen only when needed
instead of always
will need to take care of migration from older releases
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Matthieu Gallien [Fri, 30 May 2025 07:40:07 +0000 (09:40 +0200)]
Merge pull request #8314 from nextcloud/backport/8181/stable-3.16
[stable-3.16] fix(gui): handle invalid file name edge case on Windows
Jyrki Gadinger [Thu, 24 Apr 2025 16:04:35 +0000 (18:04 +0200)]
fix(gui): don't append another slash to the relative path
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Thu, 24 Apr 2025 16:01:54 +0000 (18:01 +0200)]
refactor: add new filePath method to folder
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Thu, 17 Apr 2025 16:05:28 +0000 (18:05 +0200)]
fix(gui): always hide the error label if we are allowed to rename
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Thu, 17 Apr 2025 16:04:46 +0000 (18:04 +0200)]
fix(gui): update info text with proper invalid characters
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Jyrki Gadinger [Thu, 17 Apr 2025 16:00:09 +0000 (18:00 +0200)]
fix(gui): handle invalid file name edge case on Windows
File names like "c:blah" would break the usage of the dialogue,
displaying a path like "c://blah" instead.
Apparently `QDir::filePath` checks if the passed file name is an
absolute file name using `!QFileInfo::isRelative`, which is the case if
the second character in the string is a colon -- probably indicating a
drive letter.
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Matthieu Gallien [Fri, 30 May 2025 07:39:34 +0000 (09:39 +0200)]
Merge pull request #8313 from nextcloud/backport/8280/stable-3.16
[stable-3.16] fix(AppImage): bundle client translations
Jyrki Gadinger [Thu, 15 May 2025 15:11:04 +0000 (17:11 +0200)]
fix(AppImage): bundle client translations
Signed-off-by: Jyrki Gadinger <nilsding@nilsding.org>
Matthieu Gallien [Fri, 30 May 2025 07:39:11 +0000 (09:39 +0200)]
Merge pull request #8312 from nextcloud/backport/8276/stable-3.16
[stable-3.16] fix(delete): fix move to trash in read-only folders
Matthieu Gallien [Wed, 21 May 2025 08:37:09 +0000 (10:37 +0200)]
fix(moveToTrash): enable use of move to trash in some automated tests
should improve coverage for move to trash feature to ensure this is
working as expected by users
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Tue, 20 May 2025 21:35:29 +0000 (23:35 +0200)]
fix(readonly): ignore move to trash for read-èonly items
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Thu, 15 May 2025 10:30:25 +0000 (12:30 +0200)]
fix(delete): fix move to trash when parent folder is read-only
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Thu, 15 May 2025 10:28:10 +0000 (12:28 +0200)]
fix(delete): optimize item exist checks when propagating from server
QFileInfo::exists(filename) is the fastest method
alos avoid creating too many QFileInfo instances when we need it for
multiple purposes
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Matthieu Gallien [Thu, 15 May 2025 10:04:43 +0000 (12:04 +0200)]
fix(delete): always print warnings when file deletions fail
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Nextcloud bot [Fri, 30 May 2025 02:56:46 +0000 (02:56 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Thu, 29 May 2025 03:08:55 +0000 (03:08 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Camila Ayres [Wed, 28 May 2025 14:48:43 +0000 (16:48 +0200)]
Merge pull request #8308 from nextcloud/backport/8228/stable-3.16
[stable-3.16] fix(migration): migrate general network settings.
Camila Ayres [Sat, 3 May 2025 18:00:17 +0000 (20:00 +0200)]
fix(migration): migrate general network settings.
Signed-off-by: Camila Ayres <hello@camilasan.com>
Nextcloud bot [Wed, 28 May 2025 02:59:53 +0000 (02:59 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Tue, 27 May 2025 02:58:32 +0000 (02:58 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Sun, 25 May 2025 02:59:33 +0000 (02:59 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
Nextcloud bot [Sat, 24 May 2025 02:59:18 +0000 (02:59 +0000)]
fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>